package org.dxy.domain.event.product;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 产品事件类型枚举
 * @author dxy
 * @createTime 2025/8/17
 */
@Getter
@AllArgsConstructor
public enum ProductEventTypeEnum {
    /** 产品创建 */
    CREATED("created", "产品创建"),
    
    /** 产品更新 */
    UPDATED("updated", "产品更新"),
    
    /** 产品启用 */
    ENABLED("enabled", "产品启用"),
    
    /** 产品禁用 */
    DISABLED("disabled", "产品禁用"),
    
    /** 产品删除 */
    DELETED("deleted", "产品删除"),
    
    /** 产品版本变更 */
    VERSION_CHANGED("versionChanged", "产品版本变更"),
    
    /** 产品BOM更新 */
    BOM_UPDATED("bomUpdated", "产品BOM更新"),
    
    /** 产品工艺路线分配 */
    ROUTE_ASSIGNED("routeAssigned", "产品工艺路线分配"),
    
    /** 产品工艺路线解绑 */
    ROUTE_UNASSIGNED("routeUnassigned", "产品工艺路线解绑"),
    
    /** 产品审核通过 */
    APPROVED("approved", "产品审核通过"),
    
    /** 产品审核驳回 */
    REJECTED("rejected", "产品审核驳回");

    private final String key;
    private final String description;
}